문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 스파게티 코드 (문단 편집) === [[리그 오브 레전드]] === 리그 오브 레전드는 작은 개발 규모에서 시작해 10년 넘게 서비스하는 대형 게임인 만큼, 게임 전체가 스파게티 코드 덩어리이다.[* 영미권에서는 아예 라이엇 게임즈를 스파게티 전문점으로 왜곡하는 밈이 있을 정도다.] 겉으로는 비슷한 스킬들이 속은 전부 다르게 설계되어 있어, 새로운 매커니즘이 추가될 때마다 기존 메커니즘과의 정상적인 상호작용이 불가능하다.[* 유저들에게도 알려진 가장 유명한 예시로 풀숲에 있을때만 원거리로 전환되던 [[렝가]]의 패시브, 상대방의 '''궁극기'''를 뺏어오는 [[사일러스]], 그리고 상대 처치시 일정시간 '''적 챔피언으로 빙의'''할 수 있는 [[비에고]]가 있다.] 개발진들은 이렇게 새로 만드는 메커니즘은 임시방편으로 예외 케이스들을 일일이 처리하는 식으로 버그를 수정한다.[* 사실 이것이 수많은 상용프로그램들이 스파게티 코드가 되는 이유이기도 하다. 처음에는 당연히 원칙에 맞춰 가독성 좋게 코드를 짜지만 출시나 업데이트 등이 다가오는데 버그가 발생한다면 철저한 디버깅을 하여 그 문제를 근본적으로 해결하기보다는 그냥 문제가 일어나는 케이스들을 예외처리하는 방법을 사용해 [[마감|마감기한]]을 맞추어버리곤 한다.] 문제는 이렇게 하면 당장은 해당 버그를 피할 수 있지만 땜빵이라 근본적인 문제를 해결하지 못했기 때문에 언제든지 비슷한 문제가 또 일어날 수 있으며, 코드가 길어지며 가독성 또한 나빠진다. 결국 모바일 버전은 PC 버전 코드의 사용을 포기하고 [[유니티(게임 엔진)|유니티 엔진]]으로 처음부터 다시 만들었다. 그 결과물이 바로 [[리그 오브 레전드: 와일드 리프트]]. 그 때문인지 PC 버전에서 버그의 화신으로 이름을 날리던 렝가도 와일드 리프트에서는 딱히 큰 문제를 일으키지 않았다. 특히 [[렝가]]는 캐릭터의 스킬셋을 구성하는 코드가 [[렝가#s-12.1|심하게 꼬여 있어서]] 몇 년째 끊임없이 버그를 수정하는데도 계속해서 버그가 나오고 있다. 2021년 기준으로 발견된 버그만 해도 '''50개'''에 달한다. 그 중 게임 플레이에 영향을 미치지 않는 버그는 단 '''3개'''로, 나머지 버그들은 죄다 인게임에 치명적인 영향을 줬던 버그들이다. 그 뒤를 [[사일러스]]와 [[비에고]]가 이으며 현재까지도 임시방편식 버그 수정을 거듭하고 있다. 스파게티 코드가 악영향을 준 실제 사례가 바로 [[전략적 팀 전투]]의 개발이다. 원래 개발 계획은 [[리그 오브 레전드]]의 리소스와 코드를 적당히 재활용해서 구현하는 것이었는데, 원본이 심각한 스파게티 코드인 탓에 거의 처음부터 만들어야 했다고 한다. 결국 다 만들고 보니 구조가 완전히 다른 두 개의 게임을 하나의 클라이언트에 합쳐서 서비스하게 되었는데, 당연히 불어난 용량으로 인해 클라이언트의 최적화는 산으로 가며 렉과 버그를 뿜어내기 시작했다. 전략적 팀 전투의 출시로 두 개의 게임을 감당하느라 불안정해진 클라이언트를 고치는 데에만 2년 넘게 걸렸다. 근데 이 클라이언트조차도 구 클라이언트의 문제점[* 구 클라이언트는 [[어도비 플래시]] 기반으로 만들어서 버그와 보안 취약점이 넘쳐나고 최적화가 개판이었다. 그리고 어도비 플래시가 2020년 지원이 중단되면서 어쨌든 신규 클라이언트의 개발 자체는 필수불가결이었다.]을 해결하기 위해 교체된 신 클라이언트라는 것. 말 그대로 총체적 난국이다.저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기